(library (logging)
  (export debug)
  (import
   (except (rnrs base) let-values)
   (only (guile)
         lambda* λ
         current-output-port
         when
         display
         string-join
         simple-format
         )))


(define displayln
  (lambda* (#:key (output-port (current-output-port)) (form "a") (verbose #t) . msgs)
    (when verbose
      (display (string-append
                (string-join
                 (map (lambda (msg)
                        (simple-format #f (string-append "~" form) msg))
                      msgs)
                 " ") "\n")
               output-port))))


;; alias for displayln
(define debug displayln)
